Advertising Infrastructure Supporting Cross Selling Opportunity Management

ABSTRACT

A sales system supports sales between a plurality of buyers and a plurality of sellers in a communication network. A sales server has a seller interface used by both a first seller and a second seller respectively via a first seller&#39;s computer and a second seller&#39;s computer to register availability for sale of a first product and a second product. The sales server, based upon received buyer input from an identified buyer via a buyer computer that includes buyer orders for the first product and the second product dispenses a first sales order to the first seller&#39;s computer for the first product and a second sales order to the second seller&#39;s computer for the second product. The sales server provides instructions to the first seller&#39;s computer for fulfillment of the first sales order and to the second sales computer for the fulfillment of the second sales order.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of the following applications:

U.S. application Ser. No. 13/109,093 (Docket No. B011C2), filed May 17,2011, which is a continuation of U.S. application Ser. No. 12/467,557(Docket No. B011C), filed May 18, 2009, now issued as U.S. Pat. No.7,942,316, which is a continuation of U.S. application Ser. No.09/808,717 (Docket No. B011), filed Mar. 14, 2001, now issued as U.S.Pat. No. 7,539,628, which is based on and claims the benefit of U.S.Provisional Nos. 60/214,136 (Docket No. 00A011), filed Jun. 26, 2000,60/214,183 (Docket No. 00A01), filed Jun. 26, 2000, and 60/190,825(Docket No. 00GP0001P), filed Mar. 21, 2000;

U.S. application Ser. No. 13/224,052 (Docket No. B012C2), filed Sep. 1,2011, which is a continuation of U.S. application Ser. No. 09/808,722,filed Mar. 14, 2001 (Docket No. B012), now issued as U.S. Pat. No.8,036,941, which is based on and claims the benefit of U.S. ProvisionalNos. 60/213,912 (Docket No. 00A012), filed Jun. 26, 2000, 60/214,183(Docket No. 00A01), filed Jun. 26, 2000, and 60/190,825 (Docket No.00GP0001P), filed Mar. 21, 2000;

U.S. application Ser. No. 13/104,311 (Docket No. B013C2), filed May 10,2011, which is a continuation of U.S. application Ser. No. 12/467,664(Docket No. B013C), filed May 18, 2009, now issued as U.S. Pat. No.7,938,316, which is a continuation of U.S. application Ser. No.09/808,723 (Docket No. B013), filed Mar. 14, 2001, now issued as U.S.Pat. No. 7,542,922, which is based on and claims the benefit of U.S.Provisional Nos. 60/190,825 (Docket No. 00GP0001P), filed Mar. 21, 2000,60/214,183 (Docket No. 00A01), filed Jun. 26, 2000, and 60/214,188(Docket No. 00A013), filed Jun. 26, 2000; and

U.S. application Ser. No. 09/687,499 (Docket No. 020), filed Oct. 13,2000, which is a continuation-in-part of U.S. application Ser. No.09/547,162, filed Apr. 11, 2000, now abandoned, which is based on andclaims the benefit of U.S. Provisional Nos. 60/130,082, filed Apr. 19,1999, 60/130,083, filed Apr. 19, 1999, 60/130,084, filed Apr. 19, 1999;60/131,008, filed Apr. 23, 1999, 60/144,584, filed Jul. 19, 1999,60/146,208, filed Jul. 28, 1999, 60/147,062, filed Aug. 4, 1999, and60/159,388, filed Oct. 14, 1999.

The above-identified applications are all hereby incorporated herein byreference in their entirety and constitute part of the presentapplication.

BACKGROUND

1. Technical Field

The present invention relates generally to online sales and marketing,and, more specifically, to online sales during online purchase on theInternet.

2. Related Art

The past ten years have seen tremendous growth in online Internet sales.Integration of key sales functions into sales software and hardwaresystems account for much of the penetration of online sales systems bymanufacturers, distributors, and retailers. As buyers become morecomfortable with Internet and online credit card processing, and beginto appreciate the associated ease and benefits of online purchasing,online sales revenues should experience exceptional growth. For 1998,online sales reached approximately 60 billion dollars in revenue, whileprojections for 2003 anticipate over 1.4 trillion. Corporate buyers andsellers generate over 90% of such revenues.

Conventional sales systems, such as (1) sales or shopping robot(“shopping bot” or “sales bot”) systems, (2) purported instant rebateand coupon systems, (3) auctioning systems, (4) parallel web hostedsystems, (5) custom sales channel software development, etc., however,are deficient in many respects and offer only partial solutions. Forexample, the above systems require an excessive investment of humanlabor for operation, suffer from inherent and significant deficienciesin performance, and have difficulties in collecting revenue.

More specifically, shopping bots act as a front end to the sales processby attempting to assist an individual buyer in comparison shopping ofitems across sellers on the web. Shopping bots require human intensiveinteraction not only in setting up an interface to each seller's site,but also in the ongoing maintenance of each interface to each seller'ssite. Shopping bots attempt to read and process information from the webpages of each seller's site which are often changed or deleted or movedto a differing URL. Shopping bots also fail to identify new products ateach seller's site without having an employee revisit the seller's site,revisit all the links there, identify new URL's and associated new webpage content, and formulate new interfaces thereto.

Without (and often in spite of) sufficient employee interaction,shopping bots will and do suffer from providing incorrect, incompleteand outdated information. Shopping bots also (1) fail to provideinterfaces with underlying seller product information, e.g., furtherdatabase information involved in the selection process only availableduring buyer purchasing, hypertext linked (“nested”) productinformation, etc., (2) fail to provide interfaces with underlying,backend database information, e.g., inventory, restocking schedules,etc., (3) cannot determine whether or not a purchase was made, making itdifficult to collect revenues, (4) cannot perform credit cardtransaction processing, (5) cannot handle order fulfillment, and so on.

Purported online, instant coupons and rebate sites also suffer with manyof the same deficiencies. For example, without human intervention, nomechanisms exist for (1) verifying that a manufacturer's rebate orcoupon applies to an independent retailer's offering; (2) instantlyapplying such rebates or coupons; (3) placing control in themanufacturer for designating or modifying the number of distributedand/or applied coupons or rebates in real time; and (4) advertising arebate or coupon on any web server selected by the manufacturer withprocessing through another. Thus, purported instant coupon and rebatesites require human intensive processing, and merely vector buyers tosellers' publicly offered web pages that indicate, in a poor attempt atmimicking instant processing, that a coupon is being applied.

Online auction systems also suffer from many of the same problems. Amongsuch problems, and perhaps most importantly, conventional online auctionsystems fail to provide sufficient integration with sellers to enableautomated, effective use of auctioning as a vehicle to “dump” excess ordiscontinued inventory or for promotional purposes.

Custom software development within a wholly controlled sales channelprovides a costly approach for exchanging product information, pricing,etc. When the sales channel is not wholly controlled, such informationis difficult if not impossible to collect. For example, a manufacturemay not be able to afford the cost of integrating with a plurality ofdistributors and retailers that also sell other manufacturers' goods,wherein each use significantly different sales systems that oftenchange.

Many other problems and disadvantages associated with prior systems willbecome apparent to one of skill in the art upon review of such priorsystems and in light of the teachings herein.

SUMMARY OF THE INVENTION

The present invention relates to an add-on or enhancement to the currente-commerce marketplace. The present invention may integrate into thecurrent online sales or act as a means to replace current onlineretailers that carry no inventory. The present invention enables asystem to position itself between each buyer and seller for everyInternet sales transaction. Such positioning involves offering buyers aunique and exclusive Internet sales presence that simplifies the salesprocess, while providing sellers with better sales information, sellerto seller interaction, and additional sales opportunities. The presentinvention offers a modular product line and application toolkittargeting not only on the independent buyer, but also corporate buyerswhere the majority of sales transactions occur.

Many other aspects and variations of the promotion system of the presentinvention can be appreciated by one of skill in the art through reviewof the detailed description, corresponding drawings, and claims.

BRIEF DESCRIPTION OF THE DIAGRAMS

The numerous objects and advantages of the present invention may bebetter understood by those skilled in the art by reference to theaccompanying figures in which:

FIG. 1 is a functional block diagram of buyer and seller systeminteraction with the Multi-Seller Interface System (MSIS) of the presentinvention;

FIG. 2 is a diagram illustrating the SalePoint software supporting webbased, interactive access by buyers and sellers through their webclients, and non-web based, automatic access by the sellers through aninterface of the present invention;

FIG. 3 is a diagram illustrating buyers using their web client softwareto select and request server pages for one of a plurality of applicationservices in the present invention;

FIG. 4 is a diagram illustrating the interactions between the softwareand the Seller's system of the present invention;

FIG. 5 illustrates an individual buyer interface system that runs on theMSIS of the present invention;

FIG. 6 illustrates an Opportunity Management application service thatprovides for up, cross and seller to seller opportunity management forautomated, email-based target marketing without the need to releasebuyer or specific seller information to another participating selleraccording to the present invention;

FIG. 7 illustrates Supply, Competition & Sales Channel Services(“Channel Services”) offered in accordance with the present invention;

FIG. 8 illustrates Supply, Competition & Sales Channel Services(“Channel Services”) offered in accordance with the present invention;

FIG. 9 illustrates Sales Promotion Services offered in accordance withthe present invention;

FIG. 10 illustrates an auction function offered in accordance with thepresent invention;

FIG. 11 illustrates a Corporate and Government Bidding Service offeredin accordance with the present invention;

FIG. 12 is a schematic diagram of an Integrated Channel Systemcomprising an Integrated Channel Service Manager, a manufacturerenvironment comprising an Inventory system, a Pricing system, aConfiguration system, and an Order fulfillment system, a Reseller systemfor Reseller A comprising an inventory system and an order system, aReseller system for Distributor B comprising a Seller's system, and aRetailer system for Retailer C comprising a Seller's system inaccordance with the present invention;

FIG. 13 is a schematic diagram of an Integrated Channel Systemcomprising an Integrated Channel Service Manager and a manufacturerenvironment in accordance with the present invention;

FIG. 14 is a block diagram of a Multi-Seller Interface System inaccordance with the present invention;

FIG. 15 is a block diagram illustrating a Multi-Seller Interface Systemwith regard to coupons and rebates offered by a Seller in accordancewith the present invention;

FIG. 16 is a block diagram of a Multi-Seller Interface Systemillustrating multiple distributors and retailers in accordance with thepresent invention;

FIG. 17 is a block diagram of a Multi-Seller Interface Systemillustrating a Seller determining the selling price of specific Productsbeing offered for sale by other online Sellers in accordance with thepresent invention;

FIG. 18 is a block diagram illustrating the Multi-Seller InterfaceSystem's role in the identification of Sellers for a Buyer attempting topurchase products Product A and Product B over the internet in thepresent invention;

FIG. 19 is a block diagram illustrating the Multi-Seller InterfaceSystem capable of interacting with Seller's systems employing a SalesBridge software that is installed on each of the Seller's systems in thepresent invention;

FIG. 20 is a schematic block diagram illustrating various functionalityof a Multi-Seller Interface System's and Seller's systems of the presentinvention;

FIG. 21 is an exemplary flowchart illustrating typical workflow at theMulti-Seller Interface System of the present invention;

FIG. 22 is an exemplary screen layout that a Buyer interacts with inorder to select products and obtain product prices during an onlinepurchasing activity supported by the MSIS in the present invention;

FIG. 23 is a diagram illustrating a list of products with pricesprovided to Buyer by the MSIS in the present invention;

FIG. 24 is a functional block diagram of buyer and seller systeminteraction with the system of the present invention;

FIG. 25 is a perspective diagram of an online buyer interacting with aserver, via the internet, to specify products that are to be purchasedperiodically, to selectively save the specification of products that areto be purchased periodically in a Script Storage and ExecutionEnvironment, and to selectively retrieve previously saved specificationof products from the Script Storage and Execution Environment formodification or for purchasing;

FIG. 26 is a diagram showing the incorporation of the Script Storage andExecution Environment into both the web server and themanufacturer/merchant environment;

FIG. 27 is a block diagram showing the different functional componentsof a web server environment that facilitates email and script basedsales transactions;

FIG. 28 is a block diagram of a scripting execution environment thatprovides access to various resources and data via appropriate interfacesduring the execution of scripts;

FIG. 29 is a perspective diagram of an online customer using a computerinteracting with an online sales and pricing system, via the internet,to conduct online purchases during which the pricing computationemploys, among other things, the customer's schedule of productdelivery, the forecasts of product prices provided by online futurestrading systems and the projected needs of the customer;

FIG. 30 is a diagram showing the various inputs and outputs of theonline sales and pricing system;

FIG. 31 shows various forms of product price forecasting informationreceived by the online sales and pricing system from pricing forecastingsystems such as futures trading systems, commodity tradingorganizations, market research institutions, manufacturers, etc.;

FIG. 32 is a block diagram showing exemplary components of the onlinesales and pricing system; and

FIG. 33 shows the operation of the pricing logic based on unit prices ofthe products as determined by forecasted pricing information obtainedfrom pricing forecast providers and the delivery schedule provided bythe customer.

DETAILED DESCRIPTION OF THE DIAGRAMS

FIG. 1 provides a functional block diagram of buyer and seller systeminteraction with the Multi-Seller Interface System (MSIS) of the presentinvention. The MSIS comprises SalePoint and SalesBridge Software. TheSalePoint software runs on one or more conventional web and applicationservers to provide a multi-seller interface.

The SalesBridge Software is placed on each seller's online sales systemto bridge communication between the SalePoint software and each seller'sonline sales databases and applications. Buyers may then simultaneouslyaccess many independent and different seller's sales systems. Similarly,groups of sellers (within one or more sales channels) can easily andautomatically share sales and product information.

As shown in FIG. 2, the SalePoint software will support web based,interactive access by buyers and sellers through their web clients, andnon-web based, automatic access by the sellers through an interface.

The SalesBridge Software uses both query and transaction bridgingfunctionality to couple each seller's system with the SalePointsoftware. Alternatively, such bridging functionality may be partially orentirely integrated into the seller's system.

FIGS. 3 and 4 are detailed drawings of the SalePoint and SalesBridgeSoftware. As shown in FIG. 3, buyers use their web client software(e.g., a browser) to select and request server pages for one of aplurality of application services. A web server and server scriptenvironment responds by serving html files, server pages and images thatcorrespond to the selected application service. The server pagesexecuted by the environment typically incorporate method invocations onobjects stored in an object layer or object backbone and associateddatabases. In addition, the server pages identify transaction logic forthe selected application service.

For each of the application services, transaction logic (a high levelscripting language) is written to include a sequence of tasks that eachmanipulate data or objects, with each of the tasks executed byunderlying task specific transaction logic or compiled code (hereinaftera “workflow object”), or both. Although transaction logic isspecifically written for each of the application services, many of theworkflow objects and underlying task specific transaction logic areshared by different application services.

Some examples of the application services contemplated by the presentinvention can be found with reference to FIGS. 5-11 below. The tasksexecuted by the transaction logic engine may include, for example,credit card related transactions, database searches, database updates,remote transactions executed on one or more seller's systems, etc.

The transaction logic engine interacts with several other web servercomponents of the SalePoint Software, such as a query generator,scheduling component, usage tracking, management component, emailcomponent, 3rd party web server interface, credit card processinginterface and a remote transaction handler. The query generator createsqueries based on information provided by buyer, data retrieved fromdatabase(s), information provided via method invocations from non-webserver interface, etc. The queries generated by the query generator areselectively sent to SalesBridge Software associated with remote Seller'ssystems to extract various kinds of sales information.

The scheduling component is used to periodically initiate various tasks,transaction logic, and activities such as reporting or re-pricing, etc.For example, a buyer or seller can schedule various activities andspecify when and how frequently they should be executed throughassociated application services. The schedules and the activities aresaved in databases by the scheduling component for subsequent retrievaland execution by the transaction logic engine.

Although usage tracking might have been implemented via transactionlogic, it is implemented as a separate component to collect, process andreport information regarding the use of the SalePoint Software by buyersand sellers. The usage tracking component provides information onproducts sold by various sellers, product sales volume, type of productsbeing sold, inventory information, and various other sales relatedinformation. The usage tracking component provides information withdifferent levels of granularity, as required and authorized by variousbuyers and sellers.

The management component is used to manage various activities, scheduledor unscheduled, for buyers and sellers. It is also used to manageinitializations, application service deployment, updates, recycling, andshutdown of various resources.

The email component is used to send email to one or more buyers or buyergroups after the processing of certain events or after the execution ofa scheduled or unscheduled transaction logic command. It is also used tosend various information, such as, for example, buyer purchasing andquery profiles, to sellers and to email promotional material such ascoupons and rebates to one or more buyers.

The 3rd party web server interface is used to interact with remote webservers to retrieve or to provide various kinds of information. Usingthis interface, it is possible to interact with remote web servers justlike web clients on those web servers.

The credit card processing component is used to interact or conducttransactions with remote credit card processing units. Such remotecredit card processing units may be located at seller's environments orincorporated into a seller's system. The credit card processingcomponent enables a buyer to selectively spread purchases over one ormore credit cards owned by the buyer, and to spread a buyer's shoppingcart purchase over several sellers.

The remote transaction handler provides support for interactions withSalesBridge Software installed with one or more remote seller's salessystems. It employs one or more communication mechanisms such as RemoteMethod Invocation (RMI), Common Object Request Broker Architecture(CORBA), TCPIIP, Voyager, etc., to communicate with remote software andretrieve information. Remote SalesBridge Software can initiatecommunications with the SalePoint Software in order to retrieveinformation, provide information, or request some service. It alsosupports communication with external systems such as third partycredit-card systems and monitoring tools.

FIG. 4 shows the interactions between the SalesBridge Software and theSeller's system. The seller's system may have its own web server toprovide an interface to web clients. The seller's system also typicallyincorporates seller's database that comprise, among other things,product, promotional, order fulfillment, product registration, warrantyand customer databases. An object layer on top of the database layerenables the application layer to manipulate objects.

The seller's system may also contain the seller's non-web applications,web based applications, and card processing application. The SalesBridgeSoftware may also interact with the seller's applications to extractproduct, pricing and inventory information as well as to conductcredit-card based transactions.

If the seller's system includes a web server, the SalesBridge Softwaremay also provide a web based application bridge to assist the querybridge in extracting product, pricing and inventory information. Thequery bridge is responsible for mapping or translating queries sent bySalePoint Software into one or more queries executable on the seller'sdatabases to retrieve, and possibly update, information in the seller'sdatabases.

The SalesBridge Software also provides a non-web based applicationbridge to extract information from the seller's system via the seller'snon-web applications interface. The non-web based application bridge ISemployed via an interface supporting remote access based on CORBA, RMI,etc.

The SalesBridge Software also includes a transaction bridge that can beused to interact with the seller's card processing application toprocess credit card purchases. For example, a buyer's credit card andshopping cart related information may be communicated to the seller'scard processing application to complete a transaction for the buyer.

FIG. 5 illustrates an individual buyer interface system, SaleBlazer,that runs on the MSIS. The interface may also be tailored to thecorporate buyer, with extended functionality supporting, for example,scheduled buying and just-in-time delivery.

To interact with the SaleBlazer service, a buyer merely usesconventional web browser software on the buyer's computer. The buyerinteracts to define a query relating to one or more desired products.The SaleBlazer service via the SalePoint Software identifies those ofthe plurality of participating sellers that might carry such products.Once defined, the SalePoint Software simultaneously communicates thequery to SalesBridge Software at each of the identified participatingsellers.

Using the query and transaction bridging approach of the presentinvention, each SalesBridge Software component performs a search ofproduct, pricing, inventory, etc., databases based on the query. Allsales information relating to each product identified in the search isdelivered to the SalePoint Software for presentation to the buyer. Thebuyer may review, compare and select one or more of the productsreturned from one or more of the participating sellers. Caching ofcommon queries on a day to day basis will also be supported by theSaleBlazer service to minimize communication overhead.

From an individual buyer's online perspective, the SaleBlazer servicewill perform a single transaction (e.g., credit card) processing ofmultiple product selections spanning more than one seller. Based onfinal configuration, the underlying transaction may actually involve (1)a plurality of transaction processes between each seller and the buyerusing the buyer's credit card information, and/or (2) a single creditcard transaction for the total from the buyer to the MSIS along with aplurality of transaction processes with each seller involving accountinformation of the MSIS.

As part of the sales transaction or in follow up thereto, the SaleBlazerservice will perform automated registration, warranty delivery andacceptance, maintenance contract offerings and purchases, and emailedproduct information regarding updates and upgrades services. Storedbuyer profiles will minimize buyer interaction required to carry outsales transaction and such associated services.

FIG. 6 illustrates an Opportunity Management application service thatprovides for up, cross and seller to seller opportunity management forautomated, email based target marketing without the need to releasebuyer or specific seller information to another participating seller.For example, the Opportunity Management service will permit a firstseller to contact a buyer that has completed a sales transaction for aproduct of a second seller. Similarly, a buyer showing interest but notbuying one of a seller's products can be automatically contacted viaemail offering another of the seller's products. The buyer may choose toremain anonymous and still receive such email through our emailforwarding functionality of the Opportunity Management service.

FIGS. 7 and 8 illustrate Supply, Competition & Sales Channel Services(“Channel Services”) offered in accordance with the present invention.Each seller's sales system contains complete, real time public andprivate sales information. The Channel Services will provide eachparticipating seller with access to other participating seller's salesinformation. For example, in response to manually or automaticallygenerated queries from a seller, the Channel Services instantly deliverpublic information such as pricing and product descriptions fromcompeting participating sellers. For queries generated within a saleschannel (i.e., by a manufacturer and the manufacture's distributors andretailers), private information relating to each product such asinventory, inventory projections, numbers sold, margins, etc., can beinstantly exchanged. Such public and private information will also beused by SFA (Sales Force Automation), ERP (Enterprise ResourcePlanning), and SC (Supply Channel) tool vendors to forecastinginventory, pricing, promotional activities (e.g., instant coupons,auctioning and rebate programs), and production planning, for example.

FIG. 9 illustrates Sales Promotion Services offered in accordance withthe present invention. Using the Sales Promotion Services, a buyer cangenerate a query from online rebate and coupon information for trueinstant processing, unlike current online rebate and coupon vendors whoincorrectly claim to do the same. Further, queries may be generated fromadvertising information, e.g., online auction descriptions, online salesbrochures, etc., whether or not such information originates within theMSIS.

FIG. 10 illustrates an auction function offered in accordance with thepresent invention. The MSIS supports auctioning of products by one ormore Seller's in an environment where a Buyer using a Web Client(s) canmake a bid for one or more products put up for auction by a Seller viathe Seller's Web Client software. The Sellers typically employ AuctionPosting to which Buyers send bids. The MSIS Running Auction Applicationmaintains bids offered by potential Buyers for one or more AuctionPostings put up for auction by Sellers. When the Seller selects one ormore Buyers to consummate an auction sale, the MSIS makes it possible toexecute credit-card based transactions employing the Credit CardProcessing Service and one or more Credit Card Companies.

FIG. 11 illustrates a Corporate and Government Bidding Service offeredin accordance with the present invention. The MSIS can be used as a bidprocessing system to support bidding by multiple Seller's to meet therequirements of Buyers, typically corporate buyers. The MSIS RunningBidding Application interacts with multiple Sellers who can participatein the bidding process in response to a bid request posting (BRP) fromBuyers. Buyers or Requesters can access bidding information on the MSISvia the Requester's Web Client. Using the Bidder's Web Client, Bidderscan review or selectively change their bids and also review the statusof the BRP.

SalesBridge Software on Bidder's System is employed by the MSIS tointeract with the bidder's system and periodically update information onthe status on bids. In addition, the inventory of various productsavailable on the bidder's system is selectively accessed by the MSIS viathe SaleBridge.

Requesters using a Requester's Web Client and Bidders using a Bidder'sWeb Client may interact with the MSIS via an Affiliated Bidding Web &App Server, which selectively sends Requests or bids to the MSIS andprovides information about them to Requesters and Bidders. Similarly,3rd Party Bidding Web & App Servers employ the services of the MSIS tosave bid-related information and to conduct the bid resolutionactivities. The various participants in the request and bidding processare periodically informed about the status of the bids via email. Whenbids are decided and the Requester selects a Bidder, say a lowestbidder, the MSIS facilitates the execution of the transactions toconsummate the purchase of the products by the Requester.

In one embodiment, the MSIS automatically provides to the Requester areference bid that comprises lowest bids for individual products frommultiple Bidders, thereby assembling the lowest total bid to be used,whether as a reference or as an actual bid which can be used forpurchase by the Requester. Multiple Sellers may be included in such areference bid. When multiple Bidders are selected by a Requester, whereeach Bidder supplies part of the Request, the MSIS facilitates thecompletion of the purchase by the Request from multiple Bidders.

FIG. 12 is a schematic diagram of an Integrated Channel Systemcomprising an Integrated Channel Service Manager, a manufacturerenvironment comprising an Inventory system, a Pricing system, aConfiguration system, and an Order fulfillment system, a Reseller systemfor Reseller A comprising an inventory system and an order system, aReseller system for Distributor B comprising a Seller's system, and aRetailer system for Retailer C comprising a Seller's system. Inaddition, a retailer sales system for Retailer C is also incorporated.

In general, the Integrated Channel Service Manager communicates withSalesBridge Software integrated with individual Seller systems.Specifically, the Integrated Channel Service Manager communicates withthe SalesBridge Software installed with each of the Seller systems,namely, the manufacturer environment, Reseller A, Distributor B, andRetailer C.

More specifically, the Integrated Channel Service Manager sends queriesrelated to order status, inventory levels, pricing and productconfiguration to the manufacturer environment and receives informationfrom the manufacturer environment. It also selectively sends informationrelated to product sales, pricing, inventory, order status, etc.retrieved from Reseller A and Distributor B to the manufacturerenvironment. In addition, the Integrated Channel Service Managerfacilitates the selective exchange of sales, inventory, pricing,configuration, order status, etc. between the manufacturer environment,the Reseller A, Distributor B and Retailer C. Such selective exchange ofinformation between the manufacturer environment, Reseller A andReseller B occurs via the SalesBridge Software integrated with theirrespective systems, under the supervision or control of the IntegratedChannel Service Manager.

As discussed above, quite often, manufacturers of products employseveral distributors, resellers and retailers to sell their products.Often these distributors and retailers have their own internet salespresence and endeavor to sell the manufacturers products on theinternet. One of the common problems faced by these distributors andretailers is their inability to assure Buyers of the availability ofproducts, whether the product is coming from their own or themanufacturer's inventory. This causes problems during order fulfillmentactivities after a Buyer makes a purchase and delay in delivery follows.In general, manufacturers do not have the ability to determine the salesexecuted by their various retailers and distributors. This causes (theSeller) problems in determining production targets.

These problems are solved by integrating the sales, order fulfillmentand manufacturing systems of all sellers in the channel, as shown, forexample, in FIG. 12. Such integration is facilitated by the IntegratedChannel service Manager and the individual SalesBridge Softwareincorporated in the software of each of the partners in the channel.

Specifically, in the manufacturing environment, in accordance with thepresent invention, the sales systems of manufacturers and theirdistributors is integrated with (a) the order fulfillment systems of themanufacturer and all the resellers and distributors, (b) the inventorymanagement systems of the manufacturer, (c) the pricing systems of themanufacturer(s) and distributors (d) the promotion systems of allSellers, and (e) the Configuration systems of the manufacturer which maybe shared by all the distributors and resellers. This makes it possibleto not only provide the ability to fulfill orders for an individualBuyer from multiple sellers (i.e. one or more distributors andmanufacturers) but also the ability to incorporate different pricingschemes and promotional schemes in fulfilling the order. In addition,such integration makes it possible to incorporate information about theinventory levels of the manufacturer and distributors in determining thedelivery date and shipping costs for the Buyer.

In an environment where a manufacturer is not directly involved, such asin a sales environment incorporating a large master reseller and theirdistributors and retailers, the sales systems of master resellers andtheir distributors and retailers is integrated with each Seller's (a)order fulfillment systems, (b) inventory management systems, (c) pricingsystems, and (d) promotion systems to accrue the benefits described inthe previous paragraph.

Often a Seller, such as a manufacturer, desires to determine the sellingprice of specific Products being offered for sale by other onlineSellers, and their current inventory levels of those Products,especially if the other Sellers are the Seller's own distributors. This,however, is not easy. Such information may be gathered by visiting theonline sales sites of various Sellers (distributors) and browsing orexecuting queries on each of those sales sites to extract pricinginformation. However, the integration of the sales systems and inventorymanagement systems of the various distributors and retailers of aProduct manufacturer makes it possible for the manufacturer to extractpricing and inventory information from the various distributors andretailers. It is also possible for the manufacturer to not only providethe distributors and retailers with a centrally maintained and sharedset of product information and marketing collateral, but also provideforecasts of future pricing changes, delivery schedules, manufacturingschedules and inventory levels.

Another benefit of such integration is the ability to controlpromotions. For example, the integration of sales and inventory systemsfrom multiple sellers such as those of a manufacturer and themanufacturer's distributors and retailers would make it possible tocontrol the flow of promotional offerings (coupons, rebates, etc.) in anautomated way that would also permit adjusting the promotional offeringsdynamically to meet sales targets. In such an integrated environment,the adjustments of promotional offerings is driven by severalparameters, including the volume of sales from the distributors andretailers, the product inventory levels at various shelves andwarehouses maintained by the manufacturer and distributors, the shelflife of the products, etc. In the online internet based salesenvironment, the value of coupons and rebates dispensed to Buyers arethus easily tracked altered dynamically.

The integration of sales systems from multiple sellers, especially theintegration of sales systems of manufacturers and their distributors,makes it possible to determine the sale prices for similar products fromdifferent retailers and distributors that sell the same family ofproducts from a manufacturer.

The partners of an integrated channel can retrieve configuration relatedinformation from the Manufacturer's configuration system, via theIntegrated Channel Service Manager. Such information may also beselectively cached• by the Integrated Channel Service Manager. The sameis true for Pricing information. Similarly, catalogs of products may bemaintained by the manufacturer which are then accessed by the resellers,distributors and retailers via the Integrated Channel Service Manager,and optionally directly from the manufacturer environment incoordination with the Integrated Channel Service Manager.

The integration of sales, order fulfillment, inventory managementsystems, pricing systems and promotion systems from various Sellingentities that form a part of a manufacturer's channel organization isachieved by (a) specifying interactions between these systems, (b)identifying information exchange (c) specifying programming interfaces(APIs) and protocols for information exchange and (d) constructingtransactional systems that support such interactions based on theprotocols.

The interactions between the various systems are expressed as Use-Casesand scenarios. The Use-Cases also capture details of informationexchange. Information exchange is typically expressed in terms ofbusiness objects such as Quotes, Line Items, Shopping Carts, Prices,Discounts, Orders, Contracts, etc. that are exchanged between systems.The actual transfer of information is carried out in one of two ways:(1) using XML based information structures for transfer of structureddata between systems or (2) exchanging references to objects that aresaved or instantiated in a common data exchange layer that is accessibleto all participating systems.

In one embodiment of the present invention, the Integrated ChannelService Manager is capable of interacting with Seller's systems(manufacturers, resellers, distributors and retailers) employing aSalesBridge Software that is installed on each of the Seller's systems.The SalesBridge Software is used by the Integrated Channel ServiceManager to execute queries sent to the Seller's systems from theIntegrated Channel Service Manager. The Seller systems of themanufacturers, resellers, distributors and retailers, in response,return shopping carts with prices back to the Integrated Channel ServiceManager. In general, the SalesBridge is used by the Integrated ChannelService Manager as a remote database layer that is capable oftranslating queries received from the Integrated Channel Service Managerinto queries and processes that retrieve the requested information, suchas configuration, pricing and inventory, from the Seller's Sales andother software.

The Integrated Channel Service Manager includes one or more web serversoftware components with which Buyers' computers interact, one or moreApplication server software components that provide various Salesservices to Buyers accessing them over the internet, and one or moreSales databases that is used to save various kinds of information suchas customer profile, saved quotes, product categories, etc.

Among other things, the Integrated Channel Service Manager also supportsproduct category selection, search query formulation, instant coupon andrebate processing, shopping cart comparison, composite shopping cartreview, shopping cart pricing and saved quote re-pricing, quotepersistence and query persistence, scheduled delivery information fromBuyers, customer profile auto transactions, opportunity management andsales agent support, automatic registration of products on behalf ofBuyers, and Warranty management. In addition, it also includes aSalesBridge Software interface that makes it possible to interact withthe Seller's systems.'

The Integrated Channel Service Manager activities include identifyingpotential Sellers for Buyers based on the Buyer's preferences and theactual inventory levels of the Sellers in the Channel. In addition, itidentifies one or more Seller systems in the Channel as potentialparticipants in a sale. Should the Buyer decide to consummate a salebased on the recommendation of Sellers by the Integrated Channel ServiceManager, the Seller systems participating in the sale are informed oftheir role in fulfilling the Buyer's order by the Integrated ChannelService Manager. Subsequently, the order fulfillment systems of theSellers are queried by the Integrated Channel Service Manager toretrieve order status information on behalf of the Buyer.

The Integrated Channel Service Manager assists Buyers in generating aquery for subsequent submission of those queries to Seller's systems.Queries can take the form of old saved quotes or shopping carts, couponsselected, rebates selected, query text, third party shopping carts,sales brochures, persistent queries, etc. The Integrated Channel ServiceManager preprocesses Buyer specified queries and delivers them toselected Seller systems that are identified based on one or more searchcriteria including, in some cases, product categories, customerprofiles, inventory levels, pricing information, etc.

When the Seller's systems respond with product and pricing information,for example, with priced shopping carts that include all or a subset ofthe Buyer's product list, the Integrated Channel Service Managerpresents the information to Buyer for interaction with the Buyer.Optionally, such information is presented as a comparison of productsand prices.

Typically, if a Buyer's order cannot be fulfilled by one individualSeller, the Integrated Channel Service Manager responds to Buyer'sspecification of product and pricing selection by interacting with oneor more corresponding Seller's systems to complete the salestransactions. Subsequently, the Integrated Channel Service Managerperforms post sales functions which selectively include registration,warranties, updates, maintenance contracts, opportunity management etc.Opportunity management is employed to generate additional sales orrepeat sales.

In one embodiment, in order to share information in the channel, theIntegrated Channel Service Manager provides an information exchangelayer that is populated with relevant data extracted from each of theparticipants in the Integrated Channel. Such information is lateraccessed by other participants under the control and coordination of theIntegrated Channel Service Manager. The information exchange layer isimplemented using an object-oriented database, objects of informationbeing transferred to or retrieved from the participants of an IntegratedChannel as XML based structured data. In another embodiment, theinformation exchange layer maintained by the Integrated Channel ServiceManager is an object-oriented layer of software and associatedprocessing software implemented over a relational database.

The Integrated Channel Service Manager thus makes it possible to providea Buyer with a quote for the set of products the Buyer desires, thequote being assembled from information extracted from one or moreparticipants of the Integrated Channel System and including products andprices provided by one or more of such participants. When such a quoteis found acceptable by the Buyer and the Buyer places an order based onthe quote provided, the Integrated Channel Service Manager disassemblesthe quote to provide relevant portions of the quote to the actualparticipant selling the product to the Buyer as sub-quotes, and thenforwards the sub-quotes to the participants involved. The IntegratedChannel Service Manager selectively, when required, executes credit cardprocessing to execute a single sales transaction for the Buyer thatcovers all of the sub-quotes, and thus stands in and executes salestransactions on behalf of all the participants.

In addition, order status information is retrieved, as necessary andwhen required, to enable the Buyer to follow-up on the order placed.

FIG. 13 is a schematic diagram of an Integrated Channel Systemcomprising an Integrated Channel Service Manager and a manufacturerenvironment. The manufacturer environment comprises a data warehouse, adata mining system, and a SalesBridge Software component, a Pricingsystem and an Order fulfillment system (and other Configuration andInventory Systems not shown). The Integrated Channel System furthercomprises a Reseller system for Reseller A comprising an inventorysystem and an order system, a Reseller system for Distributor Bcomprising a Seller's system, and a Retailer system for Retailer Ccomprising a Seller's system.

In general, the Integrated Channel Service Manager communicates withSalesBridge Software integrated with individual Seller systems.Specifically, the Integrated Channel Service Manager communicates withthe SalesBridge Software installed with each of the Seller systems,namely, the manufacturer environment, Reseller A, Distributor B, andRetailer C.

More specifically, the Integrated Channel Service Manager sends queriesrelated to order status, inventory levels, pricing, and productconfiguration to the manufacturer environment and receives informationfrom the manufacturer environment. It also selectively sends informationrelated to product sales, pricing, inventory, order status, etc.retrieved from Reseller A and Distributor B to the manufacturerenvironment. In addition, the Integrated Channel Service Managerfacilitates the selective exchange of sales, inventory, pricing,configuration, order status, etc. between the manufacturer environment,the Reseller A, Distributor B and Retailer C. Such selective exchange ofinformation between the manufacturer environment, Reseller A,Distributor B and Retailer C occurs via the SalesBridge Softwareintegrated with their respective systems, under the supervision orcontrol of the Integrated Channel Service Manager.

As discussed above, quite often, manufacturers of products employseveral distributors, resellers and retailers to sell their products.Often these distributors and retailers have their own internet salespresence and endeavor to sell the manufacturers' products on theinternet. One of the common problems faced by these distributors andretailers is their inability to assure Buyers of the availability ofproducts, whether the product is coming from their own or themanufacturer's inventory. This causes problems during order fulfillmentactivities after a Buyer makes a purchase and delay in delivery follows.In general, manufacturers do not have the ability to determine the salesexecuted by their various retailers and distributors. This causes (theSeller) problems in determining production targets.

These problems are solved by integrating the sales, order fulfillmentand manufacturing systems of all sellers in the channel, as shown, forexample in FIG. 20. Such integration is facilitated by the IntegratedChannel Service Manager and the individual SalesBridge Softwareincorporated in the software of each of the partners in the channel.

SalesBridge Software, in addition to facilitating sales transactions andproviding a querying interface, also provides support for the followingservices:

Mapping tool

Data Warehousing

Data Mining

As sales software and the ERP market becomes more mature, a criticalneed arises for tools that allow two communicating systems to query eachother and selectively exchange data. An obvious example of this is thescenario where a company is using SAP as their back-office system, andwishes to make it interact with the SalesBridge Software. An overridingconcern for customers will probably be SalesBridge integration withtheir current system. The front office suite (e.g., Multi SellerInterface System (MSIS>> or the Integrated Channel System would need tobe able to send quotes, configurations, pricing details, etc. to aseller having SAP for order fulfillment, inventory and manufacturing.The main point of integration then becomes the data exchange that needsto take place: The SalesBridge Software translates its quote object andits configuration object into the details the SAP system needs, andsends those details to the SAP database. In addition, the SalesBridgeSoftware translates queries sent by the Integrated Channel System orMSIS into queries that can be executed on the databases or back-officesystems available at the Seller (e.g., the manufacturer, reseller,distributor or retailer).

SalesBridge MapTool (or simply MapTool) is a data mapping system ortool. It consists of the three pieces mentioned above:

a) a GUI and programmatic events that allow a consultant to mapSalesBridge objects to/from fields and tables in a foreign database;

b) a data transfer engine which (at run time) connects to the foreigndatabase and allows the actual transfer of information between the twosystems; and

c) a report kit that provides reporting functionality.

In addition, the SalesBridge Software makes use of some of the artifactscaptured by the SalesBridge MapTool to extract information, saveinformation and to modify information, as necessary, in the database orassociated software systems at the Seller's environment. The mappingbetween the Seller's database or run-time systems and the SalesBridgecomponent is performed as follows:

1. The MapTool, using JDBC or ODBC (or JDBC/ODBC) based programmingapis, interacts with the foreign database (Seller's database) andretrieves schema information using Seller provided username andpasswords.

2. The MapTool accesses SalesBridge metadata information from theSalesBridge Software (or retrieves them from the MSIS system) toidentify mapping requirements.

3. The MapTool facilitates the creation of mapping information formapping the SalesBridge metadata to the Seller's database.

4. It also identifies mapping necessary but not possible, so that it maybe remedied via additional tables created in the Seller's and orSalesBridge environment.

5. It also facilitates identification of metadata mapping that is to besupported by programmatically creating mapping code components. Once themapping is created, it is saved in the SalesBridge component at theSeller's environment.

Mapping is used, for example, for all the following types of informationhandled by the SalesBridge Software:

Inventory

Product Information

Configuration

Pricing

Supplier Related Information

Promotional Information

Order Fulfillment

Transaction Completion (Credit Card Info, etc.)

Order Status

Shipping

Billing

Other . . .

While SalesBridge enables the Seller to execute sales, inventory andother related activities, it is desirable to facilitate the collection,processing and archival of such information over time in a DataWarehouse. The SalesBridge Software, via its MapTool, makes it possibleto not only map sales, inventory and other related information into aData Warehouse, but also makes it possible to populate such a DataWarehouse with relevant information at run-time. This enables theSalesBridge Software to act as an interface to the Data Warehouse forother systems on an Integrated Channel System or an MSIS system.

Thus, SalesBridge Data Warehouse capabilities include:

Providing a means of creating a mapping between sales, inventory andother related information and a data warehouse.

Providing means to save such mapping information in the SalesBridge.

Providing the means to selectively populate such a Data Warehouse atrun-time.

Providing means to retrieve information from the Data Warehouse usingthe SalesBridge querying interface as well as by a special DataWarehouse service. Additionally, the SalesBridge Software can beinstalled with its own Data Warehouse so as to provide warehousingservices to the Seller.

Data Mining is supported by SalesBridge by providing an ad hoc queryinginterface to a Data Warehouse that is populated. Such ad hoc queryinginterface makes it possible for other managers of information in theIntegrated Channel system or at the Seller's environment to extractinformation to enhance their decision making capabilities. In addition,third party decision support systems are provided an interface tointeract with the Data Mining service.

The partners of an integrated channel can perform Data Miningtransactions and retrieve configuration, pricing, different types offorecasts, sales, marketing, and other related information from theManufacturer's Data Warehouse using the Data Mining tool. The access tosuch information is coordinated by the Integrated Channel ServiceManager. Such information may also be selectively cached by theIntegrated Channel Service Manager. The same is true for access toarchived information maintained by the manufacturer at the DataWarehouse. Similarly, statistical information on products and sales maybe maintained by the manufacturer which is then accessed by resellers,distributors and retailers via the Integrated Channel Service Manager,the SalesBridge Software and the Data Mining Tool. Optionally, areseller or retailer can directly access such information from themanufacturer environment by interacting with the SalesBridge Software incoordination with the Integrated Channel Service Manager.

The integration of a Data Warehouse and Data Mining tool that forms apart of a manufacturer's channel organization is achieved by a)specifying interactions between these systems and the SalesBridge, b)identifying information exchange, c) specifying programming interfaces(APIs) and protocols for information exchange between these systems andthe SalesBridge; and d) constructing transactional systems that supportsuch interactions based on the protocols.

The interactions between the various systems are expressed as Use-Casesand scenarios. The Use-Cases also capture details of informationexchange. Information exchange is typically expressed in terms ofbusiness objects such as Quotes, Line Items, Shopping Carts, Prices,Discounts, Orders, Contracts, etc. that are exchanged between systems.The actual transfer of information is carried out in one of severalways: a) using XML based information structures for transfer ofstructured data between these systems and the SalesBridge Software, b)exchanging references to objects that are saved or instantiated in acommon data exchange layer that is accessible to all participatingsystems, c) providing a query interface on the Data warehouse and theData Mining tool that is accessed by the SalesBridge Software, or d)providing a set of application programming interfaces using programswritten to enable the SalesBridge Software to interact with the DataWarehouse and the Data Mining tool.

The SalesBridge Software is used by the Integrated Channel ServiceManager to execute Data Mining queries sent to the Seller's systems fromthe Integrated Channel Service Manager or from other resellers andretailers in the Channel. The Seller's systems of the manufacturers,resellers, distributors and retailers, in response, return the retrievedinformation, if any, back to the Integrated Channel Service Manager orto the Seller that sent the query. In general, the

SalesBridge Software is used by the Integrated Channel Service Manageras a remote database layer that is capable of translating queriesreceived from the Integrated Channel Service Manager into queries andprocesses that retrieve the requested information from the Data Miningtool or directly from the Data Warehouse.

The SalesBridge Software is used to populate data into the DataWarehouse, either directly or via a pipeline of processing software thatmassages the data before entering it into the Data Warehouse.

Referring to FIG. 14, when a Buyer (i.e., individuals or businessentities, such as, for example, corporations, distributers, orretailers) desires to purchase several Products (i.e., goods orservices) from a plurality of Sellers (i.e., manufacturers,distributers, or retailers) via the internet 1401, the Buyer typicallymust first, via the Buyer's computer 1403, search for the Products andlocate the various Sellers online using, for example, a listing site1405 and/or search engine 1407. The search results may, for example,identify a Seller System 1409 that only sells a desired Product A, aSeller's System 1411 that only sells a desired Product B, a Seller'sSystem 1413 that sells both desired Products, a Seller's System 1415that sells neither of the desired Products and a Seller that maintains aNon-Sales System 1417. The Buyer, however, does not know which Systemidentified will support the desired purchase until the Buyer undertakesthe time-consuming process of accessing and navigating each of theidentified Seller's Systems. The Buyer must then find the prices for theProducts and select the Seller or Sellers from which to buy theProducts. Often, during the selection process, the Buyer must access andre-access selected Seller's System(s) to compare the Products and theirprices.

In other words, the Buyer is faced with the problem of identifying thetype and model of the Products desired, the Seller(s) that carry them,and whether those Seller(s) support on-line purchases. In addition, ifthe Buyer eventually identifies several Products that might meet thedesired requirements, the Buyer has no easy way to compare the Productsor their prices, regardless of whether the Buyer is looking for the SameProducts (i.e., identical Products from a single manufacturer sold bymultiple Sellers) or Similar Products (i.e., like Products fromdifferent manufacturers sold by multiple Sellers). Moreover, once theProduct(s) and Seller(s) are finally selected, the Buyer must oftenundertake multiple transactions, with at least one transaction for eachSeller.

The above process is further complicated by the fact that the initialstep of identifying via the internet the desired Products and theSellers who provide the Products is not inherently easy. Search enginesoften provide unorganized results. The Buyer is therefore required toundergo the further time consuming process of sifting through the searchresults just to locate possible matches.

In general, therefore, even though comparing Products and prices byconducting searches using a search engine or listing site (such asExcite or Yahoo) is possible, the process is not very productive,especially if the Buyer wants to specify an upper limit to the price theBuyer is willing to pay for one or more Products. Search queryformulations on typical search engines simply do not enable a Buyer tospecify upper limits for Product prices. In addition, as mentionedabove, if a Buyer locates one or more Sellers, the Buyer must interactwith each one individually, and often sequentially, to determine if apurchase can be made. Of course, no two sales systems picked at randomare likely to be similar. Therefore, the Buyer must learn to query thesales system of each and every Seller.

To make matters more complicated, Buyers often like to receive quotesfor the cost of purchasing a set of Products from different Sellerswithout having to consummate any purchase right away. The Buyer isusually not permitted to save such quotes at the Sellers' System,requiring the Buyer to re-request quotes every time the System isaccessed. This problem is compounded when a Buyer identifies Productsdesired from different Sellers and views quotes for some of thoseProducts without the ability to save any of the quotes for subsequentaccess and use.

Even if a Buyer prints quotes provided by multiple Sellers, if the Buyerwants to change the desired Product list and generate a new quote forthe changed Product list from a particular Seller, the Buyer is oftenrequired to interact with that Seller's online Sales System to enter theinformation all over again. In the rare situation where a Seller allowsa Buyer to save quotes for some duration, those saved quotes are likelyto be discarded by the Seller after a period of suspended salesactivity.

Once the Buyer finally gets to the point of actually purchasing Productsvia the internet, the Buyer must interact with each Seller individually,and sequentially, to provide the Buyer's shipping information and creditcard related information. Usually, the Buyer is prompted to provide suchinformation before the Buyer can consummate a purchase. If the amountquoted by an online Seller for the currently selected Products from aBuyer's list is larger than the available credit on the credit cardprovided by the Buyer, the sales activity is often terminated. Even whenthe Buyer is in possession of multiple credit cards and their combinedavailable credit exceeds the quoted amount for a Products list, it isoften not possible for the Buyer to complete the purchase due to theinability of the online Sales System of the Seller to handle suchcomplicated transactions.

In addition to the problems discussed above, a Buyer that is also acorporation experiences its own unique set of problems when it buys inbulk from online Sellers. For example, the Buyer often must havesufficient storage capacity to house the Product purchased before theProduct can be distributed. In addition, when a Buyer is purchasing andstoring the Product as such, the Buyer is often paying a higher pricefor the Product than it would have paid if the Buyer had simply waitedand bought the Product when the Buyer was ready to distribute it. Thisis particularly true of high technology Products, such as, for example,computers, whose prices drop rapidly as the state of the art improves.Thus, it is often desirable for a Buyer to determine the cost ofpurchasing just some of the desired Products in the near future asopposed to purchasing them all at a current time period. There iscurrently no online sales system in widespread usage that enables aBuyer to obtain graduated quotes as such. Consequently, the advantagesof buying in bulk online are often vitiated.

Additionally, when a Seller sells one or more Products to a Buyer on theinternet, there is often an opportunity for the Seller, or for otherSellers, to sell a related but distinct item to the Buyer that isperhaps available at another Seller's online Sales System. For example,a Buyer purchasing a computer from an online Seller may also be in themarket for a computer desk and a computer chair. However, nearly allsuch sales opportunities go undetected and untapped because Sellers donot have the ability or motivation to automatically share sales relatedactivity information with each other.

Further, if a Seller has built up inventory of one or more Products thatit wants to dispose of at an accelerated rate, it has no means tooffload such inventory online.

Small Sellers experience even more difficulty in selling Productsonline. Before even buying Products via the internet, Buyers generallyneed to have confidence in the Sellers, which may not be the case unlessthe seller is well known or has a good reputation. Absent suchconfidence, Buyers may decide to pay a higher price simply for thecomfort of dealing with a known Seller.

In addition, small online Sellers often do not have the Sales Systemsnecessary to provide online sales support. Such online Sales Systemsoften require web hosting services, product configuration and pricingdatabases, credit-card processing systems, etc. Small online Sellersoften purchase web-hosting and sales support services from internetservice providers or from online malls. However, Buyers can only get tosuch Seller's Sales System when Buyers locate and subsequently migrateto them for browsing.

Sellers often provide coupons and rebates as an incentive to promotesales of specific Products. Sellers who offer coupons on the internetexperience their own unique set of problems. More specifically,referring to FIG. 15, in a typical scenario, a manufacturer 1501 firstmust speculate to identify the timing, amount and quantity of eachrebate and coupon. The manufacturer 1501 creates and delivers paperrebates/coupons to a distributor 1503, who forwards the paperrebates/coupons to a retailer 1505. The manufacturer 1501 may deliverthe paper rebates/coupons directly to the retailer 1505. To use arebate/coupon, the retailer 1505 must modify their product database, webserver content, and, possibly, their sales application. This burden,along with the burden of having to collect from the manufacturer 1501,dissuades the retailer 1505 from participating in the rebate/couponprocess.

Alternatively, the manufacturer may use a third party 1507 to deliverthe coupons/rebates directly to the Buyer.

In addition, Sellers who provide coupons and rebates for Products on theinternet often do not have the ability to control the amounts dispensedor to whom they are dispensed. This often leads to problems when toomany, or too few, rebates/coupons, are dispensed online by a Seller. Amanufacturer desires to determine the rate at which the rebates/couponsare accessed and redeemed by Buyers so as to alter the volume ofrebates/coupons offered or discount given. However, rebates offered onthe internet cannot be easily tracked, and without such tracking, aSeller cannot determine when to alter the rebate/coupon value or thenumber of rebates/coupons dispensed.

Furthermore, in most situations, retail Sellers on the internet do nothave the ability or the facility to honor rebates supplied bymanufacturers or distributors. This is also true for coupons. Buyers arethen left with no option for redeeming such coupons and rebates. In thecase of rebates, Buyers might be able to send the rebates along with theBuyer's sales receipts to manufacturers via post (snail mail) andsubsequently redeem them via post.

Additionally, when Buyers are typically provided a quote by the onlinesales system of online Sellers for the products selected for purchase,the Buyers have the option to cancel the transactions and not purchaseany Products. When they choose not to consummate a sale after a quote isprovided to them, the Sellers do not have a second opportunity toprovide a better quote or “sweeten the deal”, causing the Seller to losea potential sale.

After receiving the Products purchased from various Sellers, if theBuyer is interested in registering the Products with the manufacturersfor technical support reasons or for Product update reasons, the Buyermust typically fill in registration cards and mail them to themanufacturers via post (snail mail). In the case of software purchasedover the internet, the buyer if often prompted by the software duringits installation to fill in a registration form full of questions. Suchonline registrations for each software purchased are a chore that Buyersoften bypass at the risk of foregoing tech support from themanufacturer.

In general, without registering the product purchased, Buyers are notlikely to receive warranty support or tech support. If Buyers areinterested in registering the Product purchased with the manufacturer,the Buyer must mail receipts of the Products purchased, and sometimeseven proofs of purchase, such as barcodes, along with registrationcards, to the manufacturer. If a Buyer misplaces either the receipt orthe registration card, registering the products with the manufacturersis very difficult.

When manufacturers offer rebates on specific Products, the Buyer, ingeneral, must mail in the rebates that apply to the Products purchased.Again, mailing in rebates to manufacturers requires an investment oftime and energy. For rebates being offered over the internet, Sellersmust request and collect the information, print it, and mail it withreceipts and sales information for redemption.

The problems related to redemption of rebates are in some ways similarto the problems with the redemption of coupons. Even if buyers canlocate coupons for some of the products that they intend to buy on theinternet, typically there is no easy way to redeem them on internetpurchases.

Referring now to FIG. 16, quite often, manufacturers of products employseveral distributors and retailers to sell their products. Often thesedistributors and retailers have their own internet sales presence andendeavor to sell the manufacturers products on the internet. One of thecommon problems faced by these distributors and retailers is theirinability to assure Buyers of the availability of products, whether theproduct is coming from theirs or the manufacturer's inventory. Thiscauses problems during order fulfillment activities after a Buyer makesa purchase and delay in delivery follows. Manufacturers do not have theability to determine the sales executed by their various retailers anddistributors. This causes the Seller problems in determining productiontargets.

Often, a Seller would want to determine the selling price of specificProducts being offered for sale by other online Sellers (see, e.g. FIG.17). This, however, is not easy. Such information may be gathered byvisiting the online sales sites of various vendors and browsing orexecuting queries on each of those sales sites to extract pricinginformation. This solution does not scale up.

If manufacturers want to control the flow of rebates in an automatedway, they require information, such as the volume of sales, from theirdistributors and retailers. In the online internet based salesenvironment, coupons and rebates dispensed to Buyers cannot be easilytracked and reported, especially if the individual distributors andretailers have online sales systems that don't interact with each otherand don't communicate information easily, as is the situation when theyall have heterogeneous sales environments. A related problem is one ofdetermining the sale prices for similar products from differentretailers and distributors that sell the same family of products from amanufacturer.

Quite often, third party web-hosting companies host online sales systemsfor multiple vendors, some of whom might be involved in selling Similaror Same Products (see e.g., FIG. 16). If online vendors have todetermine prices of similar Products or the same Products sold by theircompetition, it is often difficult to obtain such information in atimely manner even when the competing vendors are hosted by the sameweb-hosting service provider. Among other reasons for this, oneimportant reason is the fact that each vendor employs their ownproprietary tools and system design to store product information,customer information, sales information etc.

If a product manufacturer, their distributors and retailers each managetheir own online sales system, then it is difficult for them tocorrelate similar or the same information contained in each of theirsystems. If they choose to install and use similar sales systems toalleviate this problem, then the distributors and retailers are eitherconstrained to carrying products from that single manufacturer or theyare forced to support several such manufacturer specific proprietarysales systems. Therefore, in order to minimize the number of such salessystems that they have to support and interact with and yet not limitthemselves to a few manufacturers, distributors and retailers are oftenforced to maintain their own individual and customized sales system thatis not necessarily tied to any individual manufacturer. By doing so,they encounter the problems of correlation of data in their salessystems and in those of the manufacturers.

FIG. 18 is a block diagram showing the Multi-Seller Interface System's1803 role in the identification of Seller's for a Buyer attempting topurchase products Product A and Product B over the internet. The Buyer,using the Buyer's computer 1801, interacts with the Multi-SellerInterface System 1803 to specify information about the products ProductA and Product B that he intends to purchase from online Sellers on theinternet. The Multi-Seller Interface System 1803 identifies the variousSeller's systems based on the category of products the Sellers carry,the Seller's capability to provide quality goods and services, and othercriteria. For example, the Multi-Seller Interface System (MSIS) 1803identifies Seller's systems 1811, 1813, 1815 as those that are capableof selling one or more products desired by the Buyer. It also determinesthat the Seller's System 1817 is incapable of selling one or moreproducts desired by the Buyer and that the Non-Sales System 1819 shouldbe ignored for possible sales transactions initiated by the Buyer.

The Buyer's computer 1801 interacts with the MSIS 1803 via internet1823. Similarly, the MSIS 1403 interacts with the Seller's systems 1811,1813, 1815, 1817 and 1819 via internet 1823. Optionally, the MSIS 1803may choose to interact with any of the Seller's systems 1811, 1813,1815, 1817 and 1819 via a dedicated network or via an intranet.

Typically, in response to a Buyer's selection of product categories, theMSIS 1803 sends queries to one or more Seller's systems 1811, 1813,1815, 1817, 1819 to extract product and pricing information from thecorresponding Seller's system. In response, the Seller's systemstypically return shopping carts filled with those Buyer specifiedproducts that they are capable of selling, along with prices for theproducts and, optionally, their inventory of the products.

FIG. 19 is a block diagram showing the Multi-Seller Interface System's1903 capable of interacting with Seller's systems 1907, 1915, 1917employing a Sales Bridge software 1911 that is installed on each of theSeller's systems 1907, 1915, 1917. The Sales Bridge software 1911 isused by the MSIS 1903 to execute queries sent to the Seller's systems1909, 1915, 1917 from the MSIS 1903 and, in response, return shoppingcarts with prices back to the MSIS 1903. In general, the Sales Bridge1911 is used by the MSIS 1903 as a remote database layer that is capableof translating queries received from the MSIS 1903 into queries andprocesses that retrieve the requested information, such asconfiguration, pricing and inventory, from the Seller's Sales software1909.

A Buyer using a Buyer's computer 1901 interacts with the MSIS 1903 overinternet 1905 to specify queries related to products that he intends topurchase. Such interactions typically involve navigating down ahierarchy of product categories to identify those that the Buyer isinterested in, or specifying a search criteria via a search interface toextract information on products and product categories and to identifyrelevant product categories.

FIG. 20 is a schematic block diagram illustrating various functionalityof a Multi-Seller Interface System's 2003 and Seller's systems 2019 and2021. The MSIS 2003 includes one or more web server software 2009 withwhich Buyer's computers 2001 interact, one or more Application serversoftware 2011 that provide various Sales services to buyers accessingthem over internet 2005 and one or more Sales databases 2013 that isused to save various kinds of information such as customer profile,saved quotes, product categories, etc.

Among other things, the MSIS also supports product category selection,search query formulation, instant coupon and rebate processing, shoppingcart comparison, composite shopping cart review, shopping cart pricingand saved quote repricing, quote persistence and query persistence,scheduled delivery information from Buyers, customer profile autotransactions, opportunity management and sales agent support, automaticregistration of products on behalf of Buyers, Warranty management. Inaddition, it also includes Sales Bridge software interface that makes itpossible to interact with Seller's systems 2019 and 2021.

Seller's systems 2019 comprises a Seller's sales software 2035 and aSales Bridge software 2023. The Seller's Sales software 2035 includes aweb server software 2029, an Application server software 2031 and aSales databases 2033. The Sales Bridge software 2023 comprises a QueryBridge 2025 and a Transaction Bridge 2027.

The Query Bridge 2025 is used to query one or more Sales databases 2033using queries formulated by the MSIS 2003 or queries created from searchinformation sent by the MSIS 2003. Information extracted by the QueryBridge 2025 is communicated to the MSIS 2003 over communication links2037. The Transaction Bridge 2027 is typically employed by the MSIS 2003to conduct credit-card based sales transactions with the Seller's system2019.

FIG. 21 is an exemplary flow chart showing typical work flow at theMulti-Seller Interface System's 2003. At a block 2101, the MSIS 2003attempts to generate a sale employing automatic marketing and salesfunctionality. These activities include emailing potential buyersinformation such as saved persistent quotes, current inventoryinformation, quote updates based on repricing existing quotes, productupgrades that might have become available, up and cross-sellingopportunity detection from an individual Seller's sales activity or frommonitoring sales activities across multiple Sellers. The automaticmarketing and sales functionality activities also include directedadvertising, coupon and rebate delivery to potential Buyers based onBuyer profile provided by Buyers or based on information gathered bytracking Buyer's buying habits.

Later, at a block 2103, the MSIS 2003 assists Buyers in generating aquery for subsequent submission of those queries to Seller's systems.Queries can take the form of old saved quotes or shopping carts, couponsselected, rebates selected, query text, third party shopping carts,sales brochures, persistent queries, etc.

Later, at a block 2105, the MSIS 2003 preprocesses Buyer specifiedqueries and delivers them to selected Seller systems that are identifiedbased on one or more search criteria including, in some cases, productcategories, customer profiles, etc. Some of these queries areselectively cached in memory by the MSIS 2003.

When the Seller's systems respond with product and pricing information,for example, with priced shopping carts that include all or a subset ofthe Buyer's product list, the MSIS 2003 presents the information toBuyer for interaction with the Buyer. Optionally, such information ispresented as a comparison of products and prices. If a customer's queryfails to retrieve results from Seller's systems, the MSIS 2003 makes atransition to the block 2101.

Otherwise, the MSIS 2003 continues to a block 2109 where it responds toBuyer's selection and acceptance of product prices by interacting withnone or more corresponding Seller's systems to complete the salestransactions. Subsequently, at a block 2111, the MSIS 2003 performs postsales functions which selectively includes registration, warranties,updates, maintenance contracts, opportunity management etc. Opportunitymanagement is employed to generate additional sales or repeat sales.

FIG. 22 is an exemplary screen layout that a Buyer interacts with inorder to select products and obtain product prices during an onlinepurchasing activity supported by the MSIS 2003. The MSIS presents aBuyer with a screen of information that includes a button for Queryterms that the Buyer can select from, a button for Query Text that isoptionally entered by the user to facilitate product and price searches,a button that when activated, results in sending a query to one or moreSeller's systems, and a button that makes it possible to view the hitsfollowing the receipt of responses to Buyer's queries.

FIG. 23 is a diagram that shows a list of products with prices providedto Buyer by the MSIS 2003. It shows a comparison of prices, for productsacquired from two different shopping carts. In this exemplary scenario,products bought from two different Sellers add up to a total that isless than the total quoted by another single Seller. Additionally, theSellers are rated with asterisks (**) indicating the ratings.

FIG. 24 provides a functional block diagram of buyer and seller systeminteraction with the system of the present invention. Therein, thesystem comprises a web based, Multi-Seller Interface System (MSIS) and aplurality of Sales Bridge Software (SBS) modules through which buyer'scomputers can simultaneously access many independent and differingsellers' sales systems.

To interact with the system of the present invention, a buyer, corporateor individual, merely accesses web pages provided by the MSIS withconventional web browser software on the buyer's computer. The buyerinteracts with the MSIS to define queries relating to one or moredesired products. The MSIS automatically attempts to identify those ofthe plurality of participating sellers that might carry such products.Once defined, each query is simultaneously communicated by the MSIS toeach of Seller's Sales System (SSS) via the SBS modules of theidentified ones of the plurality of participating sellers. Using a querybridging approach, each SBS module performs a search of product,pricing, inventory, etc., database(s) based on the query. All salesinformation relating to each product identified in the search isdelivered to the MSIS for the buyer's review, comparison and selection.The MSIS permits concurrent selection and single transaction purchasingof products from more than one seller. Caching of common queries on aday to day basis is also supported by the MSIS to minimize communicationoverhead.

The sales information returned from each SSS represents complete, realtime public and private sales information, catering not only toindividual buyers, but, more importantly, to sellers. For example, inresponse to queries from individual buyers or competitors, the querybridge of the present invention may easily be configured to deliverpublic information such as pricing and product descriptions. For queriesgenerated within a selling channel (i.e., by a manufacturer, distributoror retailer or by their sales systems), private information relating toeach product such as inventory, inventory projections, numbers sold,margins, etc., may be easily and automatically exchanged. Suchinformation can be used for forecasting inventory, pricing, planningpromotional activities (e.g., instant coupons, auctioning and rebateprograms), and production planning, for example.

The MSIS supports query definition in several ways to provide the buyerwith greatly needed yet currently unavailable functionality. Forexample, through a category selection process and/or textual search termentry, a buyer can construct a query to simultaneously retrieve from allsellers all underlying product sales information matching the query. Thebuyer can also generate a query from online rebate and couponinformation for true instant processing, unlike current online rebateand coupon vendors who incorrectly claim to do the same. Queries may begenerated from third party seller shopping carts for comparison withparticipating sellers' products. Saved quotes may be converted toqueries for updating and verification, and may be used as a persistentbasis via sales email for attempting to complete the transaction withthe buyer. Further, queries may be generated from advertisinginformation, e.g., online auction descriptions, online sales brochures,etc., whether or not such information originates within the MSIS.

Selling channel systems also generate queries in a number of, ways withor without interaction through a web client (user interface). Automaticdata gathering between participants in the selling channel will permitan application (based on a toolkit) to automatically (1) place orsuggest placing orders to replenish inventory, (2) identify new productofferings, (3) suggest pricing changes, (4) facilitate just in timedelivery, (5) identify and/or maintain appropriate inventory levels, (6)suggest or carry out changes or additions to advertising and promotionalprograms, (7) schedule release of upgraded or superseding products, etc.Competing selling channel systems may also be queried (automatically orotherwise) to gather public information regarding competing productlines. Such information may be used to supplement the automaticprocesses identified in items 1-7 above, for example. A toolkitunderlying the MSIS simplifies preparation of application software tocarry out such and other processes. Such application software may run onany or all system(s) within a sales channel. In fact, such applicationsoftware, or portions thereof, may be placed at many locations within asingle organization to carry out internal, enterprise sales functions.

The toolkit underlying the MSIS also provides for up, cross and sellerto seller opportunity management for automated, email-based targetmarketing without the need to release buyer information to aparticipating seller. For example, the MSIS permits a first seller toestablish relationships between completed and/or queried salestransactions within categories and/or by a specified second seller.Based thereon, predefined email is automatically sent to buyers orpotential buyers advertising sales of the first seller's products thatrelate to the category or to the second seller's product.

From a buyer's online perspective, the MSIS performs a singletransaction (e.g., credit card) processing of multiple productselections spanning more than one seller. Based on final configuration,the underlying transaction may actually involve (1) a plurality oftransaction processes between each seller and the buyer using thebuyer's credit card information, and/or (2) a single credit cardtransaction for the total from the buyer to the MSIS along with aplurality of transaction processes with each seller involving accountinformation of the MSIS.

As part of the sales transaction, or in follow up thereto, the MSISperforms automated registration, warranty delivery and acceptance,maintenance contract offerings and purchases, and emailed productinformation regarding updates and upgrades services. Stored buyerprofiles minimize buyer interaction required to carry out salestransactions and such associated services. Stored buyer transactionrecords enable targeted email advertising, persistent query support,opportunity management, etc.

The MSIS can, upon a seller's request and in addition to or inreplacement of the seller's sales system, perform transaction and/orother sales processing for the seller. In addition, the MSIS provideseach seller with real time access to product sales information from theseller's competitors and own sales chain. The query protocol and the SBSenable a corporate buyer to develop specifically desired salesinterfaces into one or more seller systems. The underlying functionalityand software libraries used in the MSIS may be specifically licensed forsuch purpose. Corporate buyers are also supported through scheduledpurchasing and just in time delivery functionality within the MSIS.

The present invention may generate revenue by taking a percentage ofeach completed sales transaction conducted through the MSIS. To generatefurther revenue, the MSIS tracks each buyer's use of the web-site,whether or not a transaction is completed, and offers to provide sellerswith information for potential future sales opportunities. Similarly,the System offers instant rebate and coupon processing, direct emailtargeted sales, advertising space, and persistence in exchange fortransaction percentages. Credit card processing, delivery tracking,customer support, and other backend sales functions can be offered,generating further revenue streams.

The System may be based on web server and application server softwareproducts offered by Trilogy Development Group, a company located inAustin, Tex.

FIG. 25 is a perspective diagram of an online buyer using a computer2505 interacting with a server 2520, via the internet 2510, to specifyproducts that are to be purchased periodically, to selectively save thespecification of products that are to be purchased periodically in aScript Storage and Execution Environment 2515, and to selectivelyretrieve previously saved specification of products from the ScriptStorage and Execution Environment 2515 for modification or forpurchasing. The Script Storage and Execution Environment 2515 istypically associated with a web server 2520 that provides internet-basedweb hosting services. In addition, the Script Storage and ExecutionEnvironment 2515 is linked via appropriate connections 2545, 2555 toinformation systems at one or more manufacturer or merchant environments2525, 2527. Such information systems include appropriate internet webhosting services.

In one embodiment of the present invention, customers to the web server2520 are presented with lists of products extracted from one or morecatalogs or from one or more web content providers such as manufacturers2526, 2527. If the customer selects one or more products from thecatalogs or list of products provided by the web server 2520, thecustomer is provided with the option of either purchasing the productsselected, saving a selection of products, preferably as a script, orpurchasing as well as saving the selection of products. The customer isalso provided with the option of downloading the selection of productsas a script that can be used to purchase those products at a futuretime.

If the customer chooses to save the selection of products for subsequentretrieval and purchase, the web server 2520 saves it as a script in theScript Storage and Execution Environment 2515. Subsequently, thecustomer can establish a new session with the web server 2520 to requestexecution of the saved script by the Script Storage and ExecutionEnvironment 2515 resulting in the purchase of the product.Alternatively, the customer can send an email from the customer'scomputer 2505 to the Script Storage and Execution Environment 2515 overthe link 2547 or via the internet 2510 requesting execution of one ormore previously saved scripts. In response, the Script Storage andExecution Environment 2515 retrieves the saved scripts for the customerand executes the scripts. It also creates a report including the resultsfrom the execution of the scripts and sends it to the customer as anacknowledgement.

If the customer elects to interactively purchase the selected productsfrom the web server 2520, the customer can consummate the purchase byusing a credit card for payment or by accessing a previously establishedcustomer account. The customer is then given the option of saving thedetails of the online sales transactions, including the credit cardinformation or customer account used for the sale, for a repetition ofthe sales transaction on another occasion. The customer can selectivelyretrieve saved sales transaction information in the form of scripts ofstructured data, and download it to the customer's computer 2505.

The web server 2520 is used by customers to create customer profiles. Acustomer profile includes shipping address, credit card relatedinformation, etc. Once a customer profile is created, it is used toexpedite subsequent customer purchases. Customers who choose not to havea profile created for them may be required to enter their shippingaddress, credit card related information, etc., during each purchasingactivity.

Customer profiles, typically provided by customers during a customerprofile generation activity, are selectively saved by the web server2520 so that they may be used during the execution of a saved salestransaction script. Such saved customer profiles are then used tocomplete sales transactions and to ship products after executing savedscripts.

Products are located for purchase either by browsing through severalcategories of products presented by the web server 2520 or by searchingfor them. In one embodiment of the present invention, a customer, usingthe computer 2505, and the internet connection 2530, accesses one ormore catalogs presented by the web server environment 2520 associatedwith, and operatively coupled to the Script Storage and ExecutionEnvironment 2515. The customer then activates a purchase button topurchase the products selected. In response, the web server 2520 createsa transaction script and communicates the transaction script to theScript Storage and Execution Environment 2515 via connection 2540. TheScript Storage and Execution Environment 2515 completes a purchase orderfor the customer incorporating all the products selected by the customerand optionally applying all applicable rebates and coupons, based on thetransaction script. Also, based on the transaction script, it performsorder fulfillment operations aimed at assigning products from theinventory of one or more manufacturers 2525, 2527 (or retailers ordistributors, not shown) to the customer.

In one embodiment, the inventory of some of the products purchasablefrom the web server 2520 is selectively maintained by themanufacturer/merchant environment 2525. For such products, to performorder fulfillment activities, the Script Storage and ExecutionEnvironment 2515 interacts with the manufacturer/merchant environment2525, over the connection 2545, in one of two approaches. In the firstapproach, the manufacturer/merchant environment 2525 receives purchaseorders or purchase order scripts to some products currently available intheir inventory from the Script Storage and Execution Environment 2515,in order to perform order fulfillment for the customer. Themanufacturer/merchant environment 2525 executes the received script orprocesses the purchase order to perform order fulfillment. To providethe customer profile to the manufacturer/merchant environment, thecustomer's profile or a subset thereof, is made visible or is sent tothe manufacturer/merchant environment 2525, which then ships theproducts to the customer. In a second approach, the Script Storage andExecution Environment 2515 executes the script representing thecustomer's sales transaction in its environment and interacts with themanufacturer/merchant environment 2525 to retrieve order fulfillmentinformation and to convey shipping information.

In addition to sales transaction scripts, customers may create orderstatus scripts, report generation scripts, etc. and save them in theScript Storage and Execution Environment 2515. Such scripts maysubsequently be executed at the web server. They may also be sent to themanufacturer environment 2525 for execution. The manufacturerenvironment 2525 can be made capable of executing scripts byincorporating an instance of the Script Storage and ExecutionEnvironment 2515 within its environment.

In another embodiment, the manufacturer 2525 is capable of saving and orexecuting saved sales transaction scripts or other scripts sent to it bythe web server 2520. Such scripts are executed by the manufacturerenvironment 2525, and the results of the execution are selectivelycommunicated to the web server 2520 and to the customer using thecomputer 2505.

Customers can create and save scripts at the Script Storage andExecution Environment 2515 specifying their preferred vendor list,product preferences, accounting preferences, payment methods, reportingpreferences, etc. Such scripts are subsequently accessed by the ScriptStorage and Execution Environment 2515 during the execution of salestransaction scripts.

In one embodiment, the web server 2520 serves as a front end to thee-commerce sites of manufacturers and merchants wherein customerspurchase products from the web server 2520 and pay for the productspurchased via credit cards. The web server 2520 in turn acquires theproducts purchased by the customer from customer designated suppliers(via scripts) such as manufacturers, distributors or retail merchants. Asupplier is selected based on customer's profile, the saved scriptsindicating the customer's preferred vendor list, the product category,the inventories of products at the various suppliers, the businessarrangements made by the customers or by the owners of the web server2520 with various suppliers, and other criteria. In effect, one or moresuppliers sells the products to the web server 2520 which uses theScript Storage and Execution Environment 2515 to execute the salestransactions and to save such sales transactions information.

In one embodiment, the web server 2520 sends promotional material viaemail to customers and attaches a script associated with the purchase ofthe products being promoted. The customer selectively edits the attachedscript and emails it back to the web server 2520. The web server 2520selectively forwards the received script attachments to the ScriptStorage and Execution Environment 2515 for execution. The Script Storageand Execution Environment 2515 selectively executes the scripts andcollects the results of the execution to the web server 2520 and to thecustomer.

In a similar embodiment, the customer sends an email to an email addressassociated with the web server 2520. The email includes a script thatextracts product and pricing information from the web server 2520 andspecifies a destination for the extracted information. The web server2520 receives the email and the script via the associated email address,forwards the script to the Script Storage and Execution Environment2515, and sends an acknowledgement email to the customer. The ScriptStorage and Execution Environment 2515 executes the script received fromthe customer and extracts the required information and forwards it tothe destination specified by the customer in the script.

In one embodiment of the present invention, the script executed by theScript Storage and Execution Environment 2515 comprises one or more ofthe commands supported by the PANINI Language presented in the AppendixA. In this embodiment, customers email scripts written in the PANINILanguage to the web server 2520 or directly to the Script Storage andExecution Environment 2515 for execution. In addition, the web server2520 creates scripts in the PANINI language specifying salestransactions from online customers and sends it to the Script Storageand Execution Environment 2515 for execution.

In another embodiment of the present invention, a scripting languageother than the PANINI language is employed by customers, the web server2520 and the Script Storage and Execution Environment 2515. The ScriptStorage and Execution Environment may be incorporated into the webserver 2520 or into a manufacturer's environment 2525, 2527.

FIG. 26 is a diagram showing the incorporation of a Script Storage andExecution Environment 2645 into both a web server 2620 and amanufacturer/merchant environment 2625. The web server 2620 downloadsscripts (of different kinds) to the manufacturer/merchant environment2625, as needed, and requests the manufacturer/merchant environment 2625to execute them. The manufacturer/merchant environment 2625 saves thedownloaded scripts in its Script Storage and Execution Environment 2645and executes the required scripts as necessary. For example, it executesscripts under the direction of the Script Storage and ExecutionEnvironment 2645, in response to events during computation of certainservices provided by the manufacturer/merchant environment 2625, or inresponse to requests received from the customer's computer 2625A vialink 2650 or 2630. The scripts saved in the manufacturer/merchantenvironment 2625 can be selectively updated by the Script Storage andExecution Environment 2645 when better or newer versions of the scriptsbecome available. Customers can send requests directly to themanufacturer/merchant environment 2625 and to the Script Storage andExecution Environment 2645 as email based scripts. In addition, they canalso send requests via GUI based interactions with web servers, such asweb server 2620.

FIG. 27 is a block diagram showing the different functional componentsof a web server environment 2700 that facilitates email and script basedsales transactions. The web server environment 2700 comprises a scriptsaving and execution engine 2705, a manufacturer/merchant interface2710, an app server interface 2715, an email server interface 2735, anRMI interface 2720, an HTTP interface 2725, a catalog interface 2730,and a database interface 2740. Other interfaces may also be incorporatedinto the web server environment 2700.

The script saving and execution engine 2705 is used to execute scriptsreceived from customers, manufacturers, merchants and those retrievedfrom script repository such as a database. The email server interface2735 is used to retrieve scripts sent as email from customers,manufacturers and merchants. It is also used to send email to customers,manufacturers and merchants along with attachments of scripts orreports. The email server interface 2735 provides an interface that isused to communicate with mail servers such as SMTP servers, POP mailservers and IMAP servers.

FIG. 28 is a block diagram of a scripting execution environment 2800that provides access to various resources and information viaappropriate interfaces during the execution of scripts. The ScriptingExecution Environment 2800 comprises a script execution engine 2820, ascript saving unit 2810, an order fulfillment manager 2875, anauthentication manager 2805, a catalog manager 2880, a customer profilemanager 2815, a pricing manager 2870, a search engine 2885, a trackingmanager 2825, a statistics reporting manager 2835, and other relatedfunctionality 2830. The various managers provide a mechanism to accessassociated services during the execution of scripts by the scriptexecution engine 2820 within the scripting execution environment 2800.

Online customers 2850 interact with the scripting execution environment2800 via communication links 2855. Online customers 2850 can downloadscripts from the scripting execution environment 2800. They can alsocommunicate scripts to the scripting execution environment 2800 forexecution. Similarly, manufacturers and online merchant environmentsinteract with the scripting execution environment 2800 via communicationlinks 2865.

FIG. 29 is a perspective diagram of an online customer using a computer2905 interacting with an online sales and pricing system 2915, via theinternet 2910, to conduct online purchases during which the pricingcomputation employs, among other things, the customer's schedule ofproduct delivery, the forecasts of product prices provided by onlinefutures trading systems and the projected needs of the customer. Theonline sales and pricing system 2915 is typically associated with a webserver 2920 that provides internet-based web hosting services. Inaddition, the online sales and pricing system 2915 is linked viaappropriate connections 2945 to information systems at one or moreonline futures trading system 2925. Such information systems includeappropriate internet web hosting services.

Customers are presented with a catalog of products to choose from by theweb server 2920 associates with the online sales and pricing system 2915when they visit the online sales and pricing system 2915. If thecustomer selects one or more products from the catalog or list ofproducts available at the online sales and pricing system 2915, they areprovided with the option of purchasing the products.

If the customer elects to purchase the selected products from the onlinesales and pricing system 2915, all applicable rebates and coupons areapplied to the customer's purchases by the online sales and pricingsystem 2915 in the determination of a final purchase price for thecustomer. The customer can consummate the purchase by using a creditcard for payment. The online sales and pricing system 2915 processescustomer's credit cards for sales processing. Corporate customers areallowed to open an account with the online sales and pricing system 2915that will permit them to purchase products online and settle theiraccounts periodically.

Customer profiles, typically provided by customers during a customerprofile generation activity, is selectively used by the online sales andpricing system 2915 to complete sales transactions and to ship products.Customer profile includes shipping address, credit card relatedinformation, etc. Once a customer profile is created, it is used toexpedite subsequent customer purchases. Customers who choose not to havea profile created for them may be required to enter their shippingaddress, credit card related information, etc. during each purchasingactivity.

In one embodiment of the present invention, a customer, using thecomputer 2905, and the internet connection 2930, accesses one or morecatalogs presented by a server environment 2920 associated with, andconnectively coupled to, the online sales and pricing system 2915. Inthis embodiment, the customer would optionally retrieve productinformation on one or more products that the customer plans to purchaseby browsing through several categories of products presented by theonline sales and pricing system 2915. The customer then activates apurchase button to purchase the products selected. The online sales andpricing system 2915 completes a quote containing a price for thecustomer incorporating all the products selected by the customer andoptionally applying all applicable rebates and coupons. If the customeragrees to the quote, the quote is converted into a purchase order forthe customer.

The quote and the purchase order would therefore include prices that aredetermined by incorporating the schedule of delivery optionally providedby the customer. The computation of the prices for the products wouldalso involve information on the forecasted prices for the productsacquired from one or more online futures trading systems. For someproducts, such forecasted pricing information are accessed from themanufacturers.

In one embodiment, forecasted pricing information for both theshort-term and the long-term of some of the products purchasable fromthe online sales and pricing system 2915 are selectively maintained bythe online futures trading system 2925. For such products, to performpricing activities, the online sales and pricing system 2915 interactswith the online futures trading system 2925, over the connection 2945,in one of two approaches. In the first approach, the online futurestrading system 2925 receives a list of products from the online salesand pricing system 2915 in order to provide futures related forecastedprices. The online futures trading system 2925 then returns theforecasted prices to the online sales and pricing system 2915. Thereturned forecasted prices are used by online sales and pricing system2915 in determining the prices for the products purchased by thecustomer.

In the second approach, the online sales and pricing system 2915requests live data (or periodically delivered data) on various productsfrom one or more futures trading systems and processes such receivedfutures related information in order to calculate the product prices forthe quotes and purchase orders of online customers.

The determination of the total purchase order price involvesidentification of delivery schedules for each of the products on thepurchase order and the calculation of prices for those products usingthe forecasted prices derived from futures information provided by theonline futures trading systems. In forecasting the price of a product inthe future, sources of information other than online future tradingsystems may also be selectively employed.

In one embodiment, the online sales and pricing system 2915 serves as afront end to the e-commerce sites of manufacturers and merchants whereincustomers purchase products from the online sales and pricing system2915 and reimburse it, say via credit cards, for the products purchasedonline. The online sales and pricing system 2915 in turn acquires theproducts purchased by the customer from designated suppliers such asmanufacturers, distributors or retail merchants. A supplier is selectedbased on the product category, the inventories of products at thevarious suppliers, the business arrangements made with various suppliersand other criteria. In effect, the supplier sells the products to theonline sales and pricing system 2915 which ensures the pricing ofproducts in a customer's purchase order based on their deliveryschedules and the forecasted prices for the various products. The onlinesales and pricing system 2915 selectively charges the suppliers atransaction fee for generating their business. The customer is alsoselectively made to pay a service charge to the online sales and pricingsystem 2915 for its services.

To submit online information on forecasted prices of products to theonline sales and pricing system 2915 so that they can be used todetermine purchase prices for customers, one or more online futurestrading systems 2925 establish connections 2955 with the online salesand pricing system 2915. In some embodiments, the connection 2955 is theinternet.

FIG. 30 is a diagram showing the various inputs and outputs of theonline sales and pricing system 2915. The online sales and pricingsystem 2915 receives Shopping Cart and Delivery Schedule 3005 and, inresponse, returns a Quote 3010 containing the prices for variousproducts. In addition, it optionally receives Customer's ScheduleChanges 3015 from customers subsequent to a sale and, in response, itreturns Pricing Updates to Quote 3020. It also receives scheduled andunscheduled Forecasted Prices 3025 from various sources such as futuretrading systems and market research firms. Future trading systemstypically provide information on various commodities markets andforecasts of prices of various products from those markets. Marketresearch firms such as Gartner Group, Forester Research, etc. provideperiodic research reports on various technologies and products. In orderto selectively provide automatic refunds to customers when the actualcosts of products previously purchased by customers is considerablybelow the purchasing price paid for by the customer via an initialquote, the online sales and pricing system 2915 returns selectiveRefunds to Customers 3030.

FIG. 31 shows various forms of product price forecasting informationreceived by the online sales and pricing system 2915 from pricingforecasting systems such as futures trading systems, commodity tradingorganizations, market research institutions, manufacturers, etc. Priceforecasting information may be received as a table of forecasted productprices 3105, as a graph 3115 showing quarterly variation in productprices, or as a graph showing trends 3110 such as the graph depicting anexemplary technology adoption process.

The online sales and pricing system 2915 may receive pricing forecastscategorized by geographic region where they apply. Some of the pricingforecast information presented to the online sales and pricing system2915 from information providers such as the online futures tradingsystem 2925 may selectively be encrypted for subsequent decryption andprocessing by the online sales and pricing system 2915.

In general, pricing quotes for products purchase and the price forecaststhat they are based on may be selectively saved by customers forsubsequent processing. The online futures trading system 2925 may choosenot to honor coupons that have expired.

In another embodiment, the pricing and forecasting information dispensedby information providers such as the online futures trading system 2925and received by the online sales and pricing system 2915 is generated ineXentisible Manipulation Language (XML) format. Such XML formattedforecasting information sent by the online futures trading system 2925is processed by the online sales and pricing system 2915.

FIG. 32 is a block diagram showing exemplary components of the onlinesales and pricing system 2915. The online sales and pricing system 2915includes a browsable catalog 3280 through which customers can select oneor more products for purchasing, a search engine 3285 for searching forspecific products based on one or more criteria, an AuthenticationManager 3205 for verifying the authenticity of customer accountinformation, and a Delivery Manager 3210 which manages the delivery ofproducts to the customer based on the customer's schedule of delivery,and a Quote Generator 3220 that generates quotes for the customeremploying product prices generated by a Pricing Manager 3270. It alsoincludes a Customer Profile Manager 3215 which is used to gather profileinformation of customers and an optional Tracking Manager 3225 that isused to track user buying patterns over a long term. An optionalStatistics Reporting Unit 3235 selectively provides various statisticalinformation and pricing related forecast information to customersperiodically or on-demand.

When customers decide to purchase products from the online sales andpricing system 2915, the pricing manager 3270 provides pricingfunctionality that incorporates calculation of prices based on severalfactors including the customer's schedule of product delivery and theforecast of prices provided by pricing forecast providers 3260. Thepricing manager 3270 also includes a credit card processing unit thatprocesses customer sales that are based on credit cards, and a pricerdatabase employed to store pricing related data. An order fulfillmentmanager 3275 provides information on available inventory of products. Ifa product purchased by a customer is not in stock or not stored locallyat the online sales and pricing system 2915, the order fulfillmentmanager 3275 makes it possible to purchase that product from themanufacturer, distributors or merchants. Such purchases are done in oneof two ways—seamlessly where the customer does not realize that theproduct is being acquired from a manufacturer or merchant, or explicitlywhere the customer is aware of the participation of a manufacturer ormerchant in the fulfillment of his purchase order.

Online Customers 3250 access the online sales and pricing system 2915over the connection 3255. They can browse through the online browsablecatalog of products and services 3280 or search for a specific productor service based on criteria such as product category, geographicalregion, brand names, etc. Pricing forecast providers 3260 access theonline sales and pricing system 2915 over the connection 3295.

In a similar embodiment of the present invention, quote generation isperformed by the electronic commerce software of a manufacturer oronline merchant to which a customer migrates to from the browsableindexed coupon selection software, along with a shopping cart with oneor more selected products, a delivery schedule for the products, andforecasted prices for the products corresponding with their deliveryschedule. This implies that a customer can consummate. a purchase of aproduct at a merchant or manufacturer's e-commerce site following theselection of products from the online sales and pricing system 2915 andsubsequent vectoring with pricing forecasts and delivery schedule to thee-commerce site.

Quotes created by the online sales and pricing system 2915 may beprinted by customers for tracking of the delivery of the products. Theprinting is facilitated by a print engine that is either available atthe customer's computer or can be easily downloaded to the customer'scomputer.

In one embodiment, the online sales and pricing system 2915 providesinsurance to customers, via an insurance company, for optionallyinsurance against losses occurring from an overestimated quote which, bythe time of delivery per the customer's schedule, is worth substantiallyless than the purchasing price of the quote. In another embodiment, theonline sales and pricing system 2915 dispenses refunds or coupons forsubsequent purchases to those customers based on the price differencebetween the actual sales price taking into account the actual prices ofthe purchased products at delivery time and the quoted sales price forthe products. The coupons may be redeemed by the customers duringsubsequent online purchases at the online sales and pricing system 2915.

To facilitate location of products by a customer, in one embodiment, theonline sales and pricing system 2915 provides a web interface whereproducts are categorized into different product categories. A customerbrowses, using a web browser, through categories and sub-categories ofproducts to locate and purchase one or more products. The online salesand pricing system 2915 also categorizes products by manufacturers andmerchants. If a customer purchases one or more products on the onlinesales and pricing system 2915, the rebates and coupons, if any, areautomatically applied to the final price for the customer.

Internet portals, such as Yahoo, and internet web services, such asinternet service providers (ISPs), can provide an automatic connectionto the online sales and pricing system 2915, so as to provide theirreaders information on available products, including forecasted pricesfor the short or long term, associated with one or more products on thecurrently displayed web page. Alternatively, these portals can route webbrowsers automatically to the online sales and pricing system 2915 toretrieve associated pricing information if necessary, say in a pop-upscreen (or frame) automatically created by the currently visibleweb-page provided by the portal. Thus, readers of web content providedby web page hosts and portals can retrieve forecasted prices (for shortterm and/or long term) while they browse product information.

The online sales and pricing system 2915 makes it possible to integratepurchasing with software registration and product surveys. Customers whobuy and install software are often reluctant to register them with thevendor. This situation is true for other types of products, too. Inorder to provide an incentive for registration of products, themanufacturers or vendors of such products can integrate the online salesand pricing system 2915 with the registration process so that customersmight be enticed with coupons for their next purchases.

FIG. 33 shows the operation of the pricing logic based on unit prices ofthe products as determined by forecasted pricing information obtainedfrom pricing forecast providers and the delivery schedule provided bythe customer. The customer's delivery schedule 3305 provides informationon when the customer plans to use or consume the products beingpurchased. The forecasted prices 3310 provides pricing forecastsobtained from one or more pricing forecast, providers for one or moreproducts being purchased by the customer, for the entire duration of thedelivery schedule. The online sales and pricing system 2915 generates anonline quote 3315 for the customer using the delivery schedule 3305 andforecasted pricing 3310. The online sales and pricing system 2915provides support for applying various types of discounts to the quote ofthe customer and generates a total price for the customer. Subsequently,the purchase order is selectively updated by the application of rebatesand coupons that may become available before the delivery of theproducts to the customer, thereby automatically providing savings to thecustomer.

In general, delivery schedules are provided by the customer to determinepricing based on proposed consumption rate, consumption schedule ordeployment plans of the products. Refunds or coupons are optionallyprovided to customers if the quoted price is significantly greater thanthe actual selling price.

Although a system and method according to the present invention has beendescribed in connection with the preferred embodiment, it is notintended to be limited to the specific form set forth herein, but on thecontrary, it is intended to cover such alternatives, modifications, andequivalents, as can be reasonably included within the spirit and scopeof the invention as defined by this disclosure and appended diagrams.

1. An infrastructure that supports sales between a plurality of buyersand a plurality of sellers in a communication network, theinfrastructure comprising: a server system having a seller interface,the seller interface being used by both a first seller and a secondseller respectively via a first seller's computer and a second seller'scomputer to correspondingly register availability for online sale of afirst product and a second product; the server system, based uponreceived buyer input from an identified buyer via a buyer computer,initiates a first sales order for the first product; the server system,based upon the received buyer input or information relating to the firstproduct, identifies the second product, the second product being relatedto the first product; and the server system sends to the buyer computer,information regarding the second product.
 2. The infrastructure of claim1, further comprising: the server system, based upon received buyerinput from the identified buyer via the buyer computer, accumulates asecond sales order for the second product with the first sales order forthe first product; and the server system provides instructions to thefirst seller's computer for fulfillment of the first sales order by thefirst seller; the server system, provides instructions to the secondseller's computer for fulfillment of the second sales order by thesecond seller.
 3. The infrastructure of claim 1, wherein in sending tothe buyer computer information regarding the second product, the serversystem sends the information regarding the second product prior toprocessing of sale of the first product.
 4. The infrastructure of claim1, wherein in sending to the buyer computer information regarding thesecond product, the server system sends the information regarding thesecond product during processing of sale of the first product.
 5. Theinfrastructure of claim 1, wherein in sending to the buyer computerinformation regarding the second product, the server system sends theinformation regarding the second product after completion of sale of thefirst product.
 6. The infrastructure of claim 1, wherein the informationregarding the second product is sent by the server system in an email tothe buyer computer.
 7. The sales system of claim 1, wherein theinformation regarding the second product is sent as directed advertisingto the buyer computer.
 8. The sales system of claim 9, wherein thedirected advertising is provided along with the first product salesorder.
 9. The sales system of claim 1, wherein the information regardingthe second product is sent as a coupon or rebate to the buyer computer.10. The infrastructure of claim 1, further comprising: the server systemmaintains a customer profile for each of the plurality of buyers; theserver system uses the customer profile, in conjunction with thereceived buyer input, to identify the second product.
 11. A method forsupporting sales between a plurality of buyers and a plurality ofsellers in a communication network, the method comprising: registeringavailability for online sale of a first product of a first seller and asecond product of a second seller; based upon received buyer input froman identified buyer via a buyer computer, initiating a first sales orderfor the first product; identifying, based upon the received buyer inputor information regarding the first product, the second product, thesecond product being related to the first product; and sending to thebuyer computer, information regarding the second product.
 12. The methodof claim 11, further comprising: accumulating a second sales order forthe second product with the first sales order for the first product; andproviding instructions to a first seller's computer for fulfillment ofthe first sales order by the first seller; providing instructions to asecond seller's computer for fulfillment of the second sales order bythe second seller.
 13. The method of claim 11, wherein in sending to thebuyer computer information regarding the second product, sending theinformation regarding the second product prior to processing of sale ofthe first product.
 14. The method of claim 11, wherein in sending to thebuyer computer information regarding the second product, sending theinformation regarding the second product during processing of sale ofthe first product.
 15. The method of claim 11, wherein in sending to thebuyer computer information regarding the second product, sending theinformation regarding the second product after completion of sale of thefirst product.
 16. The method of claim 11, wherein the informationregarding the second product is sent by the sales server in an email tothe buyer computer.
 17. The method of claim 11, wherein the informationregarding the second product is sent as directed advertising to thebuyer computer.
 18. The method of claim 17, wherein the directedadvertising is provided along with the first product sales order. 19.The method of claim 11, wherein the information regarding the secondproduct is sent as a coupon or rebate to the buyer computer.
 20. Aninfrastructure that supports sales between a plurality of buyers and aplurality of sellers in a communication network, the infrastructurecomprising: a server system having a seller interface, the sellerinterface being used by both a first seller and a second sellerrespectively via a first seller's computer and a second seller'scomputer to correspondingly register availability for online sale of afirst product and a second product; the server system, based uponreceived buyer input from an identified buyer via a buyer computer,initiates a first sales order for the first product; the server system,based upon the received buyer input or information regarding the firstproduct, identifies the second product; and the server system, sends tothe buyer computer information regarding the second product.
 21. Theinfrastructure of claim 20, further comprising: the server systemprovides instructions to the first seller's computer for fulfillment ofthe first sales order by the first seller.
 22. The infrastructure ofclaim 20, further comprising: the server system, based upon receivedbuyer input from the identified buyer via the buyer computer,accumulates a second sales order for the second product with the firstsales order for the first product; and the server system, providesinstructions to the second seller's computer for fulfillment of thesecond sales order by the second seller.
 23. The infrastructure of claim20, wherein the server system tracks and manages inventory of the firstproduct for the first seller and of the second product for the secondseller.
 24. The infrastructure of claim 20, wherein in sending to thebuyer computer information regarding the second product, the serversystem sends the information regarding the second product prior toprocessing of sale of the first product.
 25. The infrastructure of claim20, wherein in sending to the buyer computer information regarding thesecond product, the server system sends the information regarding thesecond product during processing of sale of the first product.
 26. Theinfrastructure of claim 20, wherein in sending to the buyer computerinformation regarding the second product, the server system sends theinformation regarding the second product after completion of sale of thefirst product.
 27. The infrastructure of claim 20, wherein theinformation regarding the second product is sent by the server system inan email to the buyer computer.
 28. The infrastructure of claim 20,wherein the information regarding the second product is sent as directedadvertising to the buyer computer.
 29. The infrastructure of claim 20,wherein the information regarding the second product is sent as a couponor rebate to the buyer computer.
 30. An infrastructure that supportssales between a plurality of buyers and a plurality of sellers in acommunication network, the infrastructure comprising: a server systemhaving a seller interface, the seller interface being used by both afirst seller and a second seller respectively via a first seller'scomputer and a second seller's computer to correspondingly registeravailability for online sale of a first product and a second product;the server system, receives input from an identified buyer via a buyercomputer, the received input corresponding to the first product; theserver system, based upon the received buyer input or informationregarding the first product, identifies the second product; and theserver system sends to the buyer computer, information regarding thesecond product.
 31. The infrastructure of claim 30 wherein the serversystem at least assists in consummating a transaction involving purchaseby the buyer via the buyer computer of the second product.